perm filename LOSS.2[QLA,LSP] blob
sn#728071 filedate 1983-10-24 generic text, type C, neo UTF8
COMMENT ā VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 (m-defun Y (f)
C00005 ENDMK
Cā;
(m-defun Y (f)
(let ((h (lambda (g)
(f (lambda (x)
(funcall (g g) x))))))
(lambda (x) (funcall (h h) x))))
(m-defun test-y (l)
(let ((len
(y
(lambda (f)
(lambda (x)
(cond ((null x) 0)
(t (1+ (f (cdr x))))))))))
(len l)))
(m-defun QY (f)
(let ((tag (ncons ()))
(h (lambda (g)
(f (qlambda 'lazy (x)
(funcall (g g) x))))))
(lambda (x)
(catch tag
(funcall (h h) x)))))
(m-defun test-qy (l)
(let ((len
(qy
(lambda (f)
(lambda (x)
(cond ((null x) 0)
(t
(1+ (f (cdr x))))))))))
(len l)))
(do ((n 51. (1+ n)))
((= n 71.) 'done)
(make-multi-processor n)
(test-qy '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20))))
(startup 50)
Multi-processing Lisp with 50 processors.
=>
20
Number of Processors: 50
Processes Created: 58
Processes Scheduled: 59
Read Conflicts: 0
Write Conflicts: 0
Wait Cycles: 14516
Active Cycles: 1847
Multiprocessor Steps: 641
=>
(print-jobs)